package AnnotationExamples.annotationUtil;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 自定义注解
 * 元注解 meta-annotation @target @retention
 * <p>
 * target 来定义你要把注解用在什么地方
 * retention 用来定义你把注解用在哪一个级别【可用】  【源代码source中、类文件中class、运行时runtime】
 * <p>
 * 没有元素的注解，叫做标记注解。
 * 另外，
 * 程序员可以标记 @FunctionA 来判断哪些方法和用例实现了这些需求
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface FunctionB {
	public int step();

	public String description() default "no description";
}
